﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EraNet.Core;
using EraNet.Core.Model.Messages;

namespace EraNet.Services.Messages
{
    public interface INoticeServices
    {
        /// <summary>
        /// 新增
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        int Insert(Notices model);
        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        int Update(Notices model);
        /// <summary>
        /// 删除指定的对象
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        int Delete(Notices model);
        /// <summary>
        /// 根据ID获取信息
        /// </summary>
        /// <param name="noticeId"></param>
        /// <returns></returns>
        Notices GetNoticeById(int noticeId);
        /// <summary>
        /// 根据ID,学校ID 获取信息
        /// </summary>
        /// <param name="noticeId"></param>
        /// <returns></returns>
        Notices GetNoticeById(int noticeId, int schoolId);
                /// <summary>
        /// 获取当前指定ID下的公告列表
        /// </summary>
        /// <param name="SchoolId"></param>
        /// <param name="PageIndex"></param>
        /// <param name="Pagesize"></param>
        /// <param name="PageCount"></param>
        /// <returns></returns>
        IPagedList<Notices> SelectPager(int pageIndex, int pagesize);
        /// <summary>
        /// 批量获取数据
        /// </summary>
        /// <param name="PageIndex"></param>
        /// <param name="PageSize"></param>
        /// <param name="PageCount"></param>
        /// <returns></returns>
        IPagedList<Notices> SelectPager(int schoolId,int pageIndex, int pageSize);
        /// <summary>
        /// 批量获取数据
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="userId"></param>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        IPagedList<Notices> SelectPager(int sender, int userId, int pageIndex, int pageSize);
    }
}
